<html>
  <head></head>
  <body>
    <div id="app">
      <div>Proxy</div>
    </div>
  </body>
  <script>
    function sleep(interval) {
      return new Promise(resolve => {
        setTimeout(resolve, interval)
      })
    }

    async function promise1() {
      await sleep(1000)
      console.log('promise1')
    }
    async function promise2() {
      await sleep(2000)
      console.log('promise2')
    }
    async function promise3() {
      await sleep(3000)
      console.log('promise3')
    }

    // console.time('test')
    // Promise.all([promise1(), promise2(), promise3()])
    //   .then(() => {
    //     console.log('promise.all执行完毕')
    //     console.timeEnd('test')
    //   })
    //   .catch(() => {
    //     console.log('promise.all执行失败')
    //     console.timeEnd('test')
    //   })
    ;(async function asyncTime() {
      console.time('aysncTime')
      await promise1()
      await promise2()
      await promise3()
      console.log('async 执行完毕')
      console.timeEnd('aysncTime')
    })()

    //---------------------------------------------------------------------------------------

    // function promise1() {
    //   return new Promise(resolve => {
    //     setTimeout(() => {
    //       resolve()
    //       console.log('promise1')
    //     }, 1000)
    //   })
    // }
    // function promise2() {
    //   return new Promise(resolve => {
    //     setTimeout(() => {
    //       resolve()
    //       console.log('promise2')
    //     }, 2000)
    //   })
    // }
    // function promise3() {
    //   return new Promise(resolve => {
    //     setTimeout(() => {
    //       resolve()
    //       console.log('promise3')
    //     }, 3000)
    //   })
    // }

    // console.time('test')
    // Promise.all([promise1(), promise2(), promise3()])
    //   .then(() => {
    //     console.log('promise.all执行完毕')
    //     console.timeEnd('test')
    //   })
    //   .catch(() => {
    //     console.log('promise.all执行失败')
    //     console.timeEnd('test')
    //   })
    // ;(async function asyncTime() {
    //   console.time('aysncTime')
    //   await promise1()
    //   await promise2()
    //   await promise3()
    //   console.log('async 执行完毕')
    //   console.timeEnd('aysncTime')
    // })()
  </script>
</html>
